草庐IT

c++ - 进程 ID 和进程名称

全部标签

ruby - 如何打印 Ruby 1.9 进程的运行时堆栈跟踪?

有什么方法可以打印Ruby1.9.x进程的运行时堆栈跟踪吗?我知道Ruby1.8有一个名为pstack的实用程序,但该项目似乎在几年前就被放弃了:https://github.com/ice799/pstack.Ruby1.9是否存在类似的东西?非常感谢!编辑:我有兴趣使用外部工具生成堆栈跟踪(不在与Ruby进程相同的内存空间中运行)。正如@mosch所指出的,Kernal#caller方法在正在运行的Ruby进程中运行。您甚至可以构建对捕获进程信号并打印堆栈跟踪的Ruby代码的支持:Signal.trap("SIGTERM"){pcaller}引用:http://www.ruby-d

ruby - Ruby 守护进程中的错误文件描述符

在MacOSXLion上使用Rubyv1.8.7和Daemonsv1.1.8,我试图编写一个消费者进程并让它作为守护进程运行:#config[:name]=>'idx_my_delete_consumer'#config[:daemon]=>{:multiple=>false,#:backtrace=>true,#:dir_mode=>:normal,#:log_dir=>'/Users/pprakash/consumer.log',#:monitor=>true,#:dir=>'/Users/pprakash/pids'}Daemons.run_proc(config[:name],

ruby-on-rails - 检查我是否在 delayed_job 进程中

我有一个Rails应用程序,我在其中使用delayed_job。我想检测我是否在delayed_job进程中;像ifin_delayed_job?#dosomethingonlyifitisadelayed_jobprocess...else#dosomethingonlyifitisnotadelayed_jobprocess...end但是我不知道怎么办。这是我现在使用的:IN_DELAYED_JOB=beginbasename=File.basename$0arguments=$*rake_args_regex=/\Ajobs:/(basename=='delayed_job')

c - Ruby 的最大函数顺序如何重复?

我一直在看maxmethod在Ruby的Enumerable混合(v2.4.1)。这是一个相当简单的方法,但是当存在重复项时它如何排序项目有点令人困惑。例如:x=[1,2,3,4,5,6,7,8,9]x.max{|a,b|a%2b%2}=>110.times{|y|px.max(y){|a,b|a%2b%2}}[][1][1,7]#whyis7thenextelementafter1?[3,1,5]#whynomore7?[7,3,1,5]#7isnowfirst[9,7,3,1,5][9,7,3,1,5,6][9,7,3,1,5,4,6][9,7,3,1,5,2,4,6][9,7,5

ruby - 使用 s3 gem + rails 4.1.5 时不允许将 `@@{' 作为类变量名称(SyntaxError)

我知道已经有人问过这种类型的问题了。我使用s3gem将我的文件上传到s3存储桶中。但是在安装s3gem之后,当我启动railsserver时它显示了这个错误:/var/lib/gems/1.9.1/gems/aws-s3-0.6.3/lib/aws/s3/extensions.rb:223:in`class_eval':/var/lib/gems/1.9.1/gems/aws-s3-0.6.3/lib/aws/s3/extensions.rb:223:`@@{'isnotallowedasaclassvariablename(SyntaxError)/var/lib/gems/1.9.

ruby-on-rails - 从对象验证消息中删除字段名称

我在一个表单中使用它对一个对象进行了简单的事件记录验证:form.error_messages({:message=>'',:header_message=>''})这反过来会输出类似“FieldNameMyCustommessage”的内容我需要做的是从错误消息中删除字段名称,但保留我的自定义消息。谁能为此指出正确的方向。 最佳答案 在rails3.2.6中,您可以在语言环境文件中设置它(例如,config/locales/en.yml):en:errors:format:"%{message}"否则,默认格式为“%{attrib

ruby - 邮件 gem 。将收件人显示名称和地址提取为单独的值

使用邮件gem(即Rails+ActionMailer),是否有一种干净的方法来获取收件人的显示名称?我可以通过以下方式获取地址:mail.to.first我可以通过以下方式获取格式化的显示名称+地址:mail.header_fields.select{|f|f.name=="To"}.first.to_s但是我怎样才能得到显示名称部分(即在和>之前)。我知道有人会建议使用正则表达式,但这不是我想要的,因为我随后必须解析任何编码,而这正是Mailgem可能已经做的事情。我是一个流行的PHPMailer库的作者,我知道在之前假设位的缺陷。和>是人类可读的,在标题中,当8位字符开始发挥作用

ruby-on-rails - HTTP POST 中的多个键/值对,其中键是相同的名称

我正在开发一个接受来自远程客户端的数据的API,其中一些HTTPPOST中的键几乎用作数组。在英语中,这意味着我的服务器上有一个名为“类”的资源。从这个意义上讲,类(class)是学生上课和老师类的类型。当用户提交HTTPPOST为他们的应用程序创建新类(class)时,许多键值对如下所示:学生姓名:鲍勃·史密斯学生姓名:简·史密斯学生姓名:克里斯·史密斯如果我的服务器是RubyonRails,那么在客户端(假设客户端是cURL或ActiveResource,等等)处理这个问题的最佳方法是什么?在服务器端处理这个问题的合适方法是什么应用程序?需要一种方法来允许多个键具有相同的名称并且没

ruby-on-rails - 动态 body ID

如何在Rails中为body标签设置ID? 最佳答案 我没有发现任何特别优雅或灵活的解决方案。将body_class方法添加到application_helper.rb:defbody_class[controller_name,action_name].join('-')end..在布局中:">#e.goutput:然后您可以改进上述帮助程序以动态注入(inject)其他标识符,例如模块。 关于ruby-on-rails-动态bodyID,我们在StackOverflow上找到一个类似

ruby - 尝试调用邪恶的向导步骤时收到名称错误

我尝试重现http://railscasts.com/episodes/346-wizard-forms-with-wicked轨道广播。我尝试通过四步向导创建报告。我生成Controllerreport_steps将resources:report_steps添加到routes.rb创建步骤View现在我尝试调用它(就像在railscats中通过在浏览器的地址栏中键入localhost:3000/report_steps/step1一样)并接收:RoutingErroruninitializedconstantReportStepsController::Wicked问题是什么?我使